home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / QuickTime VR / MacOS / QuickDraw™ 3D 1.0.6F4 SDK / Development / 3DMF parser / 1.0 version / MF3DPC / MFLABELS.H < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-07  |  3.0 KB  |  92 lines  |  [TEXT/dosa]

  1. #ifndef    MF3D_LABELS_H
  2. #define    MF3D_LABELS_H
  3. /*==============================================================================
  4.  *
  5.  *    File:        MFLABELS.H
  6.  *
  7.  *    Function:    Enum/Flags lookup tables
  8.  *
  9.  *    Version:    Metafile:    Version 1.0 3DMF files
  10.  *                Package:    Release #2 of this code
  11.  *
  12.  *    Author(s):    Rick Wong (RWW), Duet Development Corp.
  13.  *                John Kelly (JRK), Duet Development Corp.
  14.  *
  15.  *    Copyright:    (c) 1995 by Apple Computer, Inc., all rights reserved.
  16.  *
  17.  *    Change History (most recent first):
  18.  *        FB7_JRK    Pragma macros
  19.  *        Fabio    Changed file name to 8 characters
  20.  *        F3K_RWW    GeneralPolygonHint.
  21.  *        F3A_RWW    MeshEdges and OrientationStyle.
  22.  *        F2E_RWW    File created.
  23.  *==============================================================================
  24.  */
  25. #if defined(applec) || defined(__MWERKS__) || defined(THINK_C)
  26. #pragma once
  27. #endif
  28.  
  29. #include <stddef.h>
  30.  
  31. #include "MFSYSTYP.H"
  32. #include "MFTYPES.H"
  33.  
  34. /* Really only needs to be sufficiently large enough to read our text labels */
  35. #define    kMF3D_MaxLabelLength    127
  36.  
  37. typedef    struct MF3D_LabelTable
  38. {    MF3DEnumData    value;
  39.     MF3DCStringPtr    str;
  40. } MF3D_LabelTable, *MF3D_LabelTablePtr;
  41.  
  42. typedef MF3D_LabelTable        MF3D_EnumTable, *MF3D_EnumTablePtr;
  43. typedef    MF3D_LabelTable        MF3D_FlagTable, *MF3D_FlagTablePtr;
  44.  
  45. #define    kMF3D_EndTable    0x00000000, NULL
  46.  
  47. /*==============================================================================
  48.  *    Enum Tables
  49.  *==============================================================================
  50.  */
  51. extern MF3D_EnumTable gMF3D_BooleanEnum[];
  52. extern MF3D_EnumTable gMF3D_ShapeHintEnum[];
  53. extern MF3D_EnumTable gMF3D_FallOffEnum[];
  54. extern MF3D_EnumTable gMF3D_PixelTypeEnum[];
  55. extern MF3D_EnumTable gMF3D_EndianEnum[];
  56. extern MF3D_EnumTable gMF3D_BackfacingEnum[];
  57. extern MF3D_EnumTable gMF3D_FillStyleEnum[];
  58. extern MF3D_EnumTable gMF3D_InterpolationStyleEnum[];
  59. extern MF3D_EnumTable gMF3D_OrientationStyleEnum[];
  60. extern MF3D_EnumTable gMF3D_SubdivisionMethodEnum[];
  61. extern MF3D_EnumTable gMF3D_AxisEnum[];
  62. extern MF3D_EnumTable gMF3D_ShaderUVBoundaryEnum[];
  63. extern MF3D_EnumTable gMF3D_PackingEnum[];
  64. extern MF3D_EnumTable gMF3D_GeneralPolygonHintEnum[];
  65.  
  66. /*==============================================================================
  67.  *    Flag Tables
  68.  *==============================================================================
  69.  */
  70. extern MF3D_FlagTable gMF3D_MetafileFlags[];
  71. extern MF3D_FlagTable gMF3D_DisplayGroupStateFlags[];
  72. extern MF3D_FlagTable gMF3D_PickPartsFlags[];
  73. extern MF3D_FlagTable gMF3D_CapsFlags[];
  74.  
  75. /*==============================================================================
  76.  *    Label lookup routines
  77.  *==============================================================================
  78.  */
  79. MF3DErr
  80. MF3D_MatchLabelByValue(
  81.     MF3D_LabelTablePtr    inLabelTablePtr,
  82.     const MF3DUns32        inValueToMatch,
  83.     MF3DCStringPtr        *outLabelText);
  84.  
  85. MF3DErr
  86. MF3D_MatchLabelByName(
  87.     MF3D_LabelTablePtr    inLabelTablePtr,
  88.     MF3DCStringPtr        inLabelText,
  89.     MF3DUns32            *outLabelValue);
  90.  
  91. #endif
  92.